#pragma once
#include<stdio.h>
#include<stdlib.h>
#include<assert.h>

//节点
typedef int SDataType;
typedef struct SListNode
{
    struct SListNode* next;
    SDataType val;
}SNode;

void SListPrint(SNode* phead);
void SListPushBack(SNode** pphead, SDataType x);
void SListPushFront(SNode** pphead, SDataType x);
void SListPopFront(SNode** pphead);
void SListPopBack(SNode** pphead);
SNode*  SListFind(SNode* pphead, SDataType x);
void SListInsert(SNode** pphead, SNode*pos, SDataType x);
void SListErase(SNode** pphead, SNode* pos);
void SListInsertAfter(SNode*pos, SDataType x);
void SListEraseAfter(SNode* pos);
